Typically, software installations encode information about their underlying behaviors and dependencies. But the long period between authoring the installations and eventual retirement of software applications means that information regarding the installations' underlying behaviors and dependencies is often lost. Specifically, many software installations and installation technologies (including but without limitation Microsoft Windows Installer (“MSI”)) execute some native compiled code to complete certain aspects of the installation process. While such native code may not be part of the installed software applications, its existence may explain why certain software application components were installed or how they were installed. Specifically, the existence of the native code within the software application installation may imply that the underlying software application being installed has some secondary dependency on some physical aspect of the computer system which the installation author feels compelled to analyze in order to properly complete the software application installation. However, users such as IT administrators often cannot discover why the software installation needs to execute such native code, for example, because the IT administrators usually do not have physical access to the original source code. For example, authors of the software installations may not have provided documents explaining why such native code is necessary. Without this information, it is difficult for users to decide whether to retire an installed software application or to transition an existing software application into a new enterprise network.